/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */

import DAO.JogoDAO;
import DAO.TimeDAO;
import DAO.TimeJogoDAO;
import java.util.ArrayList;
import model.Time;
import model.TimeJogo;
import static org.junit.Assert.*;
import org.junit.Test;

/**
 *
 * @author Alex
 */
public class AbastecerTimeJogo {

    public AbastecerTimeJogo() {
    }

    @Test
    public void abastecerTimeJogo() {
        TimeDAO timeDAO = new TimeDAO();
      
        TimeJogoDAO timeJogoDAO = new TimeJogoDAO();
        int c1 = 0;
        int c2 = 0;
        
        //conta chave de 1 a 12 --> A a L
        for (int i = 1; i < 13; i++) {
            System.out.println("-------------O id da chave é " + i);
            ArrayList<Time> times = new ArrayList<Time>();
            ArrayList<TimeJogo> posicoesTimes = new ArrayList<TimeJogo>();

            //Busca os times da chave Ex. A
            times = timeDAO.buscarTimePorChave(i);
            //Busca as posições de jogos da chave. Ex. jogo 1 a time1 vs time2
            posicoesTimes = timeJogoDAO.buscarPorChave(i);
            
            //contador das posições de jogos da chave.
            c1 = 1;

            for (TimeJogo timeJogo : posicoesTimes) {
                
                System.out.println("-----------------O id de timeJogo é "+ timeJogo.getId());

                System.out.println("O id do jogo é -----------------" + timeJogo.getJogo().getId());
                
                //contador de times.
                c2 = 0;
                for (Time time : times) {

                 
                    c2 += 1;
                    
                    //insere o primeiro time da chave no primeiro espaço do primeiro jogo da chave.
                    if (c1 == 1 && c2 == 1) {
                        timeJogo.setTime(time);
                     
                        timeJogoDAO.atualizar(timeJogo);
                      
                    }
                    
                    //insere o segundo time da chave no segundo espaço do primeiro jogo.
                    //c1 é = 4 porque na comando sql, primeiro vem as três posições do lado esquerdo
                    //e só depois as posições do lado direito.
 //                   Exemplo:
//                    c1 = 1 vs c1 = 4
//                    c1 = 2 vs c1 = 5
//                    c1 = 3 vs c1 = 6
                    if (c1 == 4 && c2 == 2) {
                        timeJogo.setTime(time);
                       
                  timeJogoDAO.atualizar(timeJogo);
                        System.out.println("Inserir rival primeiro jogo+++++++");
                    }
                    if (c1 == 5 && c2 == 3) {
                        timeJogo.setTime(time);
                       
                    timeJogoDAO.atualizar(timeJogo);
                        System.out.println("Inserir Terceiro posição 5 time jogo+++++++");
                    }
                    if (c1 == 6 && c2 == 3) {
                        timeJogo.setTime(time);
              
                   timeJogoDAO.atualizar(timeJogo);
                        System.out.println("Inserir Terceiro posição 6 time jogo+++++++");
                    }
                }

                c1 += 1;

            }

        }
    }

}
